class Solution {
    public:
        vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
            set<int> st(nums1.begin(), nums1.end());
            vector<int> ans;
            for (int i=0;i<nums2.size();i++) {
                if (st.erase(nums2[i])) { // x 在 st 中
                    ans.push_back(nums2[i]);
                }
            }
            return ans;
        }
    };